//二次封装axios
import axios from 'axios'
import nProgress from 'nprogress';

//建实例
const service = axios.create({
  baseURL:'/mock',
  timeout:10000
})

//请求拦截器
service.interceptors.request.use(
  (config) => {
    //开启进度条
    nProgress.start();
    return config;
  }
)

//响应拦截器
service.interceptors.response.use(
  (response) => {
    //关闭进度条
    nProgress.done();
    // promise将会成功，result=response.data
    return response.data;
  },
  // 网络错误，404,5xx等不是2xx的错误
  (error) => {
    //处理错误，中断执行链:返回padding的promise
    // alert(error);
    // return new Promise(()=>{})

    //不处理错误，返回result是error，失败的promise
    return Promise.reject(error);
  }
)

export default service;